#pragma once

#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>

typedef char ElemType;
typedef struct LinkListStackNode
{
	ElemType data;
	struct LinkListNode* next;
}LinkSTNode;
typedef struct LinkListStack
{
	LinkSTNode* head;
	int size;
}LinkST;

void InitStack(LinkST** s);
bool StackEmpty(LinkST* s);
void Push(LinkST* s, ElemType e);
bool Pop(LinkST* s, ElemType* e);
void DestroyStack(LinkST* s);